#include "RecastAlloc.h"
#ifdef __cplusplus
extern "C" {
#endif
void nav_rcIntArray_clear(rcIntArray * c_this){
	c_this->clear();
}

void nav_rcIntArray_Delete(rcIntArray * c_this){
	if(c_this==0){
	    return;
	}
	delete c_this;
}

void nav_rcIntArray_DeleteArray(rcIntArray * c_this){
	if(c_this==0){
		return;
	}
	delete []c_this;
}

rcIntArray * nav_rcIntArray_IndexArray(rcIntArray * c_this,long n){
	if(c_this==0){
		return 0;
	}
	c_this+=n;
	return c_this;
}

int nav_rcIntArray_pop(rcIntArray * c_this){
	int c_out = c_this->pop();
	int wrap_out  = (c_out);
	return wrap_out;
}

void nav_rcIntArray_push(rcIntArray * c_this,int item){
	int c_arg_item=item;
	c_this->push(c_arg_item);
}

rcIntArray * nav_NewrcIntArray(){
	rcIntArray* wrap_out = new rcIntArray();
	return wrap_out;
}

rcIntArray * nav_NewrcIntArray11(int n){
	int c_arg_n=n;
	rcIntArray* wrap_out = new rcIntArray(c_arg_n);
	return wrap_out;
}

void nav_rcIntArray_resize(rcIntArray * c_this,int size){
	int c_arg_size=size;
	c_this->resize(c_arg_size);
}

int nav_rcIntArray_size(rcIntArray const * c_this){
	int c_out = c_this->size();
	int wrap_out  = (c_out);
	return wrap_out;
}

void nav_rcNewTag_Delete(rcNewTag * c_this){
	if(c_this==0){
	    return;
	}
	delete c_this;
}

void nav_rcNewTag_DeleteArray(rcNewTag * c_this){
	if(c_this==0){
		return;
	}
	delete []c_this;
}

rcNewTag * nav_rcNewTag_IndexArray(rcNewTag * c_this,long n){
	if(c_this==0){
		return 0;
	}
	c_this+=n;
	return c_this;
}

rcNewTag * nav_NewrcNewTag(){
	rcNewTag* wrap_out = new rcNewTag();
	return wrap_out;
}

rcIntArray * nav_NewRcIntArrayPtrArray(long n){
	rcIntArray* c_this=new rcIntArray[n];
	return c_this;
}

rcNewTag * nav_NewRcNewTagPtrArray(long n){
	rcNewTag* c_this=new rcNewTag[n];
	return c_this;
}

void * nav_rcAlloc(size_t size,rcAllocHint hint){
	size_t c_arg_size=size;
	rcAllocHint c_arg_hint=hint;
	void * c_out = rcAlloc(c_arg_size,c_arg_hint);
	void * wrap_out  = (void *)(void*)(c_out);
	return wrap_out;
}

void nav_rcFree(void * ptr){
	void * c_arg_ptr=(void *)(void*)(ptr);
	rcFree(c_arg_ptr);
}

#ifdef __cplusplus
}
#endif
